/*
 * @Description:
 * @version:
 * @Author: 潘骏杰
 * @Date: 2021-11-19 09:03:57
 * @LastEditors: 潘骏杰
 * @LastEditTime: 2022-03-22 15:55:32
 */
import axios from 'axios'
import { Notify } from 'vant'
import RSA from '@/utils/rsa.js'
// import router from "@/router";

const baseURL =
  process.env.NODE_ENV === 'development' ? '/api' : window.productionUrl
// const baseURL = '/api'
// console.log(process.env)
// 创建axios实例
const service = axios.create({
  baseURL, // api的base_url  window.productionUrl
  withCredentials: true,
  timeout: 30000 // 请求超时时间
})

// 发送请求拦截器
service.interceptors.request.use(
  (config) => {
    config.headers['Content-Type'] = 'application/json;charset=UTF-8'

    const params = config.data
    // console.log(JSON.stringify(params));

    const jiami = RSA.encrypt(JSON.stringify(params))
    // console.log(jiami);
    // let jiami = params
    config.data = jiami
    return config
  },
  (error) => {
    return Promise.reject(error)
  }
)

// 发送请求响应拦截
service.interceptors.response.use(
  (response) => {
    console.log(response)
    const res = response.data
    // console.log(res);
    if (res.result) {
      return res
    } else {
      Notify({ type: 'danger', message: res.message || 'error' })
      return Promise.reject(res.message || 'error')
    }
    // if (res.status !== 200) {

    //   router.go(-1);
    //   // 其他的code 需要单独判断
    //   //       //501 token匹配失败，回到登录

    //   // if (response.code == 501) {
    //   //   // ??? 需要单独调试一番
    //   //   store.dispatch('user/backToLogin').then(() => {
    //   //     //location.reload()
    //   //   })
    //   // }

    //   return Promise.reject(res.message || "error");
    // } else {

    // }
  },
  (error) => {
    // console.log("err" + error);
    // if (error.response.status == 500) {
    //   location.reload()
    // }
    Notify({ type: 'danger', message: error.message || 'error' })
    return Promise.reject(error)
  }
)

export default service
